! function(e, t) { "object" == typeof exports && "undefined" != typeof module ? module.exports = t() : "function" == typeof define && define.amd ? define(t) : e.AOS = t() }(this, function() {
    "use strict";
    var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : {},
        t = "Expected a function",
        n = NaN,
        o = "[object Symbol]",
        i = /^\s+|\s+$/g,
        a = /^[-+]0x[0-9a-f]+$/i,
        r = /^0b[01]+$/i,
        c = /^0o[0-7]+$/i,
        s = parseInt,
        u = "object" == typeof e && e && e.Object === Object && e,
        d = "object" == typeof self && self && self.Object === Object && self,
        l = u || d || Function("return this")(),
        f = Object.prototype.toString,
        m = Math.max,
        p = Math.min,
        b = function() { return l.Date.now() };

    function v(e, n, o) {
        var i, a, r, c, s, u, d = 0,
            l = !1,
            f = !1,
            v = !0;
        if ("function" != typeof e) throw new TypeError(t);

        function y(t) {
            var n = i,
                o = a;
            return i = a = void 0, d = t, c = e.apply(o, n)
        }

        function h(e) { var t = e - u; return void 0 === u || t >= n || t < 0 || f && e - d >= r }

        function k() {
            var e = b();
            if (h(e)) return x(e);
            s = setTimeout(k, function(e) { var t = n - (e - u); return f ? p(t, r - (e - d)) : t }(e))
        }

        function x(e) { return s = void 0, v && i ? y(e) : (i = a = void 0, c) }

        function O() {
            var e = b(),
                t = h(e);
            if (i = arguments, a = this, u = e, t) { if (void 0 === s) return function(e) { return d = e, s = setTimeout(k, n), l ? y(e) : c }(u); if (f) return s = setTimeout(k, n), y(u) }
            return void 0 === s && (s = setTimeout(k, n)), c
        }
        return n = w(n) || 0, g(o) && (l = !!o.leading, r = (f = "maxWait" in o) ? m(w(o.maxWait) || 0, n) : r, v = "trailing" in o ? !!o.trailing : v), O.cancel = function() { void 0 !== s && clearTimeout(s), d = 0, i = u = a = s = void 0 }, O.flush = function() { return void 0 === s ? c : x(b()) }, O
    }

    function g(e) { var t = typeof e; return !!e && ("object" == t || "function" == t) }

    function w(e) {
        if ("number" == typeof e) return e;
        if (function(e) { return "symbol" == typeof e || function(e) { return !!e && "object" == typeof e }(e) && f.call(e) == o }(e)) return n;
        if (g(e)) {
            var t = "function" == typeof e.valueOf ? e.valueOf() : e;
            e = g(t) ? t + "" : t
        }
        if ("string" != typeof e) return 0 === e ? e : +e;
        e = e.replace(i, "");
        var u = r.test(e);
        return u || c.test(e) ? s(e.slice(2), u ? 2 : 8) : a.test(e) ? n : +e
    }
    var y = function(e, n, o) {
            var i = !0,
                a = !0;
            if ("function" != typeof e) throw new TypeError(t);
            return g(o) && (i = "leading" in o ? !!o.leading : i, a = "trailing" in o ? !!o.trailing : a), v(e, n, { leading: i, maxWait: n, trailing: a })
        },
        h = "Expected a function",
        k = NaN,
        x = "[object Symbol]",
        O = /^\s+|\s+$/g,
        j = /^[-+]0x[0-9a-f]+$/i,
        E = /^0b[01]+$/i,
        N = /^0o[0-7]+$/i,
        z = parseInt,
        C = "object" == typeof e && e && e.Object === Object && e,
        A = "object" == typeof self && self && self.Object === Object && self,
        q = C || A || Function("return this")(),
        L = Object.prototype.toString,
        T = Math.max,
        M = Math.min,
        S = function() { return q.Date.now() };

    function D(e) { var t = typeof e; return !!e && ("object" == t || "function" == t) }

    function H(e) {
        if ("number" == typeof e) return e;
        if (function(e) { return "symbol" == typeof e || function(e) { return !!e && "object" == typeof e }(e) && L.call(e) == x }(e)) return k;
        if (D(e)) {
            var t = "function" == typeof e.valueOf ? e.valueOf() : e;
            e = D(t) ? t + "" : t
        }
        if ("string" != typeof e) return 0 === e ? e : +e;
        e = e.replace(O, "");
        var n = E.test(e);
        return n || N.test(e) ? z(e.slice(2), n ? 2 : 8) : j.test(e) ? k : +e
    }
    var $ = function(e, t, n) {
            var o, i, a, r, c, s, u = 0,
                d = !1,
                l = !1,
                f = !0;
            if ("function" != typeof e) throw new TypeError(h);

            function m(t) {
                var n = o,
                    a = i;
                return o = i = void 0, u = t, r = e.apply(a, n)
            }

            function p(e) { var n = e - s; return void 0 === s || n >= t || n < 0 || l && e - u >= a }

            function b() {
                var e = S();
                if (p(e)) return v(e);
                c = setTimeout(b, function(e) { var n = t - (e - s); return l ? M(n, a - (e - u)) : n }(e))
            }

            function v(e) { return c = void 0, f && o ? m(e) : (o = i = void 0, r) }

            function g() {
                var e = S(),
                    n = p(e);
                if (o = arguments, i = this, s = e, n) { if (void 0 === c) return function(e) { return u = e, c = setTimeout(b, t), d ? m(e) : r }(s); if (l) return c = setTimeout(b, t), m(s) }
                return void 0 === c && (c = setTimeout(b, t)), r
            }
            return t = H(t) || 0, D(n) && (d = !!n.leading, a = (l = "maxWait" in n) ? T(H(n.maxWait) || 0, t) : a, f = "trailing" in n ? !!n.trailing : f), g.cancel = function() { void 0 !== c && clearTimeout(c), u = 0, o = s = i = c = void 0 }, g.flush = function() { return void 0 === c ? r : v(S()) }, g
        },
        W = function() {};

    function P(e) {
        e && e.forEach(function(e) {
            var t = Array.prototype.slice.call(e.addedNodes),
                n = Array.prototype.slice.call(e.removedNodes);
            if (function e(t) {
                    var n = void 0,
                        o = void 0;
                    for (n = 0; n < t.length; n += 1) { if ((o = t[n]).dataset && o.dataset.aos) return !0; if (o.children && e(o.children)) return !0 }
                    return !1
                }(t.concat(n))) return W()
        })
    }

    function Y() { return window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver }
    var _ = {
            isSupported: function() { return !!Y() },
            ready: function(e, t) {
                var n = window.document,
                    o = new(Y())(P);
                W = t, o.observe(n.documentElement, { childList: !0, subtree: !0, removedNodes: !0 })
            }
        },
        B = function(e, t) { if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function") },
        F = function() {
            function e(e, t) {
                for (var n = 0; n < t.length; n++) {
                    var o = t[n];
                    o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, o.key, o)
                }
            }
            return function(t, n, o) { return n && e(t.prototype, n), o && e(t, o), t }
        }(),
        I = Object.assign || function(e) { for (var t = 1; t < arguments.length; t++) { var n = arguments[t]; for (var o in n) Object.prototype.hasOwnProperty.call(n, o) && (e[o] = n[o]) } return e },
        K = /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i,
        G = /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i,
        J = /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i,
        Q = /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i;

    function R() { return navigator.userAgent || navigator.vendor || window.opera || "" }
    var U = new(function() {
            function e() { B(this, e) }
            return F(e, [{ key: "phone", value: function() { var e = R(); return !(!K.test(e) && !G.test(e.substr(0, 4))) } }, { key: "mobile", value: function() { var e = R(); return !(!J.test(e) && !Q.test(e.substr(0, 4))) } }, { key: "tablet", value: function() { return this.mobile() && !this.phone() } }, { key: "ie11", value: function() { return "-ms-scroll-limit" in document.documentElement.style && "-ms-ime-align" in document.documentElement.style } }]), e
        }()),
        V = function(e, t) { var n = void 0; return U.ie11() ? (n = document.createEvent("CustomEvent")).initCustomEvent(e, !0, !0, { detail: t }) : n = new CustomEvent(e, { detail: t }), document.dispatchEvent(n) },
        X = function(e) {
            return e.forEach(function(e, t) {
                return function(e, t) {
                    var n = e.options,
                        o = e.position,
                        i = e.node,
                        a = (e.data, function() { e.animated && (function(e, t) { t && t.forEach(function(t) { return e.classList.remove(t) }) }(i, n.animatedClassNames), V("aos:out", i), e.options.id && V("aos:in:" + e.options.id, i), e.animated = !1) });
                    n.mirror && t >= o.out && !n.once ? a() : t >= o.in ? e.animated || (function(e, t) { t && t.forEach(function(t) { return e.classList.add(t) }) }(i, n.animatedClassNames), V("aos:in", i), e.options.id && V("aos:in:" + e.options.id, i), e.animated = !0) : e.animated && !n.once && a()
                }(e, window.pageYOffset)
            })
        },
        Z = function(e) { for (var t = 0, n = 0; e && !isNaN(e.offsetLeft) && !isNaN(e.offsetTop);) t += e.offsetLeft - ("BODY" != e.tagName ? e.scrollLeft : 0), n += e.offsetTop - ("BODY" != e.tagName ? e.scrollTop : 0), e = e.offsetParent; return { top: n, left: t } },
        ee = function(e, t, n) { var o = e.getAttribute("data-aos-" + t); if (void 0 !== o) { if ("true" === o) return !0; if ("false" === o) return !1 } return o || n },
        te = function(e, t) {
            return e.forEach(function(e, n) {
                var o = ee(e.node, "mirror", t.mirror),
                    i = ee(e.node, "once", t.once),
                    a = ee(e.node, "id"),
                    r = t.useClassNames && e.node.getAttribute("data-aos"),
                    c = [t.animatedClassName].concat(r ? r.split(" ") : []).filter(function(e) { return "string" == typeof e });
                t.initClassName && e.node.classList.add(t.initClassName), e.position = { in: function(e, t, n) {
                        var o = window.innerHeight,
                            i = ee(e, "anchor"),
                            a = ee(e, "anchor-placement"),
                            r = Number(ee(e, "offset", a ? 0 : t)),
                            c = a || n,
                            s = e;
                        i && document.querySelectorAll(i) && (s = document.querySelectorAll(i)[0]);
                        var u = Z(s).top - o;
                        switch (c) {
                            case "top-bottom":
                                break;
                            case "center-bottom":
                                u += s.offsetHeight / 2;
                                break;
                            case "bottom-bottom":
                                u += s.offsetHeight;
                                break;
                            case "top-center":
                                u += o / 2;
                                break;
                            case "center-center":
                                u += o / 2 + s.offsetHeight / 2;
                                break;
                            case "bottom-center":
                                u += o / 2 + s.offsetHeight;
                                break;
                            case "top-top":
                                u += o;
                                break;
                            case "bottom-top":
                                u += o + s.offsetHeight;
                                break;
                            case "center-top":
                                u += o + s.offsetHeight / 2
                        }
                        return u + r
                    }(e.node, t.offset, t.anchorPlacement),
                    out: o && function(e, t) {
                        window.innerHeight;
                        var n = ee(e, "anchor"),
                            o = ee(e, "offset", t),
                            i = e;
                        return n && document.querySelectorAll(n) && (i = document.querySelectorAll(n)[0]), Z(i).top + i.offsetHeight - o
                    }(e.node, t.offset)
                }, e.options = { once: i, mirror: o, animatedClassNames: c, id: a }
            }), e
        },
        ne = function() { var e = document.querySelectorAll("[data-aos]"); return Array.prototype.map.call(e, function(e) { return { node: e } }) },
        oe = [],
        ie = !1,
        ae = { offset: 120, delay: 0, easing: "ease", duration: 400, disable: !1, once: !1, mirror: !1, anchorPlacement: "top-bottom", startEvent: "DOMContentLoaded", animatedClassName: "aos-animate", initClassName: "aos-init", useClassNames: !1, disableMutationObserver: !1, throttleDelay: 99, debounceDelay: 50 },
        re = function() { return document.all && !window.atob },
        ce = function() { arguments.length > 0 && void 0 !== arguments[0] && arguments[0] && (ie = !0), ie && (oe = te(oe, ae), X(oe), window.addEventListener("scroll", y(function() { X(oe, ae.once) }, ae.throttleDelay))) },
        se = function() {
            if (oe = ne(), de(ae.disable) || re()) return ue();
            ce()
        },
        ue = function() { oe.forEach(function(e, t) { e.node.removeAttribute("data-aos"), e.node.removeAttribute("data-aos-easing"), e.node.removeAttribute("data-aos-duration"), e.node.removeAttribute("data-aos-delay"), ae.initClassName && e.node.classList.remove(ae.initClassName), ae.animatedClassName && e.node.classList.remove(ae.animatedClassName) }) },
        de = function(e) { return !0 === e || "mobile" === e && U.mobile() || "phone" === e && U.phone() || "tablet" === e && U.tablet() || "function" == typeof e && !0 === e() };
    return { init: function(e) { return ae = I(ae, e), oe = ne(), ae.disableMutationObserver || _.isSupported() || (console.info('\n      aos: MutationObserver is not supported on this browser,\n      code mutations observing has been disabled.\n      You may have to call "refreshHard()" by yourself.\n    '), ae.disableMutationObserver = !0), ae.disableMutationObserver || _.ready("[data-aos]", se), de(ae.disable) || re() ? ue() : (document.querySelector("body").setAttribute("data-aos-easing", ae.easing), document.querySelector("body").setAttribute("data-aos-duration", ae.duration), document.querySelector("body").setAttribute("data-aos-delay", ae.delay), -1 === ["DOMContentLoaded", "load"].indexOf(ae.startEvent) ? document.addEventListener(ae.startEvent, function() { ce(!0) }) : window.addEventListener("load", function() { ce(!0) }), "DOMContentLoaded" === ae.startEvent && ["complete", "interactive"].indexOf(document.readyState) > -1 && ce(!0), window.addEventListener("resize", $(ce, ae.debounceDelay, !0)), window.addEventListener("orientationchange", $(ce, ae.debounceDelay, !0)), oe) }, refresh: ce, refreshHard: se }
});